home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / C / hf^k-5.dms / in.adf / PhxASS.Lha / PhxAss433.readme < prev   
Encoding:
Text File  |  1996-10-17  |  4.6 KB  |  93 lines

  1. Short:        PhxAss V4.33 68xxx Macro Assembler
  2. Author:       frank@phoenix.owl.de (Frank Wille)
  3. Uploader:     frank@phoenix.owl.de
  4. Type:         dev/asm
  5. Replaces:     dev/asm/PhxAss432*
  6. Distribution: No CD
  7. Version:      4.33
  8. Requires:     OS2.04
  9.  
  10. PhxAss V4.33 is a highly optimizing macro assembler for Motorola's 680x0
  11. CPUs, 6888x FPUs and 68851 MMU (of course, the 030, 040 and 060 MMUs are
  12. also supported). It requires OS2.04 (V37) and 1 MB RAM as minimum.
  13.  
  14. Most important features:
  15. o PhxAss is FREEWARE.
  16. o Symbolic and Source Level Debugging. Possibility to enable Source
  17.   Level Debugging for high level languages too.
  18. o Automatic generation of executables (if possible).
  19. o Creates relocatable Amiga-DOS objects or absolute code (written into
  20.   a file (raw or Motorola S-Format), into memory or directly onto disk).
  21. o Small Code and Small Data support (also support for __MERGED sections).
  22. o Listing file, Cross Reference Listing, Equates file.
  23. o Complete floating point support: You can use complex floating point
  24.   expressions, including float functions (sine, logarithm, square root,
  25.   power, etc.), everywhere in your source, e.g. defining float EQUates or
  26.   SETs.
  27. o Switches for ten different optimizations.
  28. o Locale symbols (xxx$ and .xxx type).
  29. o Up to 36 macro parameters.
  30. o Support for Motorola's old and new operand style (even in 68000 mode).
  31. o locale.library usage (english, german, swedish, italian, danish, dutch,
  32.   hungarian and french ).
  33. o Nearly all directives of the most popular assemblers like Seka, DevPac or
  34.   AS (Aztec) are supported. Example: INCBIN, INCDIR, CODE_C, REPT, RS,
  35.   RSRESET, EQUR, REG, OFFSET, XDEF, XREF, PUBLIC, OUTPUT ...
  36. o PhxAss is able to stay resident in memory.
  37.  
  38. You will find two different versions of PhxAss in this distribution:
  39. 1. PhxAss: The standard 680x0,FPU,MMU macro assembler.
  40. 2. GigaPhxAss: Identical to PhxAss, but source codes are not limited to
  41.    65535 lines. Quite useful for assembling huge Reassembler outputs.
  42.  
  43.  
  44. CHANGES SINCE PHXASS V4.32 (last Aminet release):
  45.  
  46. Fixed Bugs:
  47. o Negation of floating point functions was impossible (Example: -sin(x)).
  48. o Infinite loop on unknown section type or BSS_F.
  49. o "section blah,code,chip" and "section blah,code,fast" were coalesced
  50.   by PhxAss by using the MemFlags of the first definition. They're
  51.   differentiated now.
  52. o __RS got the value of the last RS-offset instead of the RS-counter.
  53. o Crash on generation of an absolute file by using the FILE directive.
  54.   The bug existed since the implementation of buffered I/O routines in v4.31.
  55. o Setting new optimization flags in source text by using OPT, only
  56.   caused an addition of the specified flags instead of a complete
  57.   redefinition.
  58. o There were still some problems with CNOP, where a short-branch over
  59.   a CNOP could get out of range in some situations.
  60. o Empty sections, which were referenced by code of another section,
  61.   are no longer deleted. Instead a section with size 0 will be created
  62.   in the object file or the executable.
  63. o According to Motorola's 6888x User's Manual, only .b, .w, .l and .s
  64.   are allowed as an extension for FMOVE.? Dm,FPn and FMOVE.? FPm,Dn.
  65. o IFD/IFND didn't work if the symbol has a value of zero.
  66. o If DS does an automatic alignment, a label in the same line was not
  67.   affected.
  68. o The bitfield instructions BFxxx <ea>{x:y}, caused a syntax error, when
  69.   the addressing mode was absolute short/long.
  70.  
  71. New Features:
  72. o New, bigger hash tables for symbols and mnemonics shorten the compilation
  73.   time by approx. 10-30%. The size of those hash tables may be modified
  74.   by GLOBHASHTAB/K/N, LOCHASHTAB/K/N and MNEMOHASHTAB/K/N.
  75. o The new SET symbol CARG can select a specific macro parameter by its
  76.   value. \. selects the macro parameter with the number of CARG. A post
  77.   incrementation and decrementation of CARG is supplied by \+ and \- .
  78. o __CPU contains the current CPU type, selected by MACHINE. __FPU
  79.   contains the current FPU id., selected by MACHINE and FPU. __MMU
  80.   shows, whether PMMU code generation is allowed.
  81. o The command line parameter TO allows a directory as destination. An object
  82.   file with the name of the source text and ".o" extension will be created.
  83. o New command line parameter SHOWOPT/S enables listing of all optimized
  84.   source lines together with the number of bytes gained.
  85. o A0 and A1 are additionally allowed for small data base register.
  86. o The small data base register may be changed by NEAR An multiple times
  87.   in a source text.
  88. o Macro parameter \0 (extension) may be used in strings too.
  89. o Implemented FEQUR directive (EQUR for FPU registers).
  90. o <...> can be used in macros to indicate an indivisible term. Examples:
  91.   <Hello World!>  or  <"Test",0>.
  92. o All undefined XDEF symbols will be listed when assembly has finished.
  93.